Neste projeto iremos ler uma tecla. Se ela estiver pressionada faremos acender o led bultin e se a tecla estiver solta apagaremos o led.
O intuito deste projeto é ler uma tecla e controlar algo dependendo do valor desta leitura.
Utilizei uma tecla de contato momentâneo mas se você só tiver uma tecla normal pode usar sem problemas.
O resistor pode ser qualquer um entre 1k e 100k.
Esquema :
Programa :
/*
Projeto 02 - LeTeclaControlaLed
O Objetivo deste projeto é ler uma tecla que ao ser pressionado acende o led
e ao soltamos a tecla o led apaga
Para este projeto você precisará de um resistor de 1K e uma tecla Normalmente aberta.
Temos uma tecla instalada na Porta D0 ligada da seguinte maneira :
O resistor deve estar ligado entre VCC(+5V) e o pino D0
A chave deve estar ligada ao Pino D0 e a terra.
Veja no esquema como conectar
Portanto ao medir LOW no pino D0 significa que estamos pressionando a tecla
Se medirmos HIGH significa que a tecla esta solta.
Além da tecla usaremos o led builtin do arduino para acender ou apagar pelo comando dessa tecla.
Portanto, nas portas do arduino teremos :
Arduino Utilização
D13 Led Builtin
D0 Chave de comando
*/
// Definindo onde nossas coisas estão conectadas
int tecla = 0; // D0 - Está ligado a Tecla
int led = 13; // D13 - Está ligado nosso led bultin
int letcla = 1; //aqui será lido o estado da tecla
// ou poderia ser const int led = LED_BUILTIN; // é o número da porta do led : D13 ou IO13
// Esta rotina roda apenas uma vez na inicialização :
void setup() {
pinMode(tecla, INPUT); // definindo a porta de leitura da tecla como entrada
pinMode(led, OUTPUT); // definindo a porta do led como saída
digitalWrite(led,LOW); //apagando o led inicialmente
}
// Loop eterno:
void loop() {
letcla = digitalRead(tecla); // lembre-se : 0=botão pressionado, 1=botão solto
if(letcla == 0) { // lendo a chave : 0=pressionada
digitalWrite(led,HIGH); // acendendo o led
}
else { // diferente de zero : tecla liberada
}
digitalWrite(led,LOW); //apagando o led
delay(100); // Aguardar 100 ms
}
Se a tecla estiver liberada na porta D0 leremos HIGH e com isto apagaremos o led.
Ao pressionar a tecla leremos na porta D0 LOW e ai acendemos o led.
Não me preocupei neste momento com o debounce da tecla porque neste projeto não é critico.